Premiers Pas en PLUSHIE

Ce tutoriel suppose l'utilisation de l'interface web. Mais il peut s'utiliser avec l' application à downloader .

Apprivoiser PLUSHIE

Sous son aspect de peluche toute douce et ses mots que vous pensez connaître, PLUSHIE cache une logique difficile à appréhender. Il n'est pas si facile que cela à prendre en main. Les mots qu'il a appris n'ont pas pour lui le sens qu'ils ont pour vous. Il reste très rigoureux et pointilleux dans son exécution.

Essayons de nous mettre à la place de quelqu'un qui le découvre pour la première fois. Il a survolé la page d'accueil, éventuellement regardé une présentation ou deux et a vu l'interface et s'est jeté dessus.
L'interface elle même n'est pas difficile à prendre en main a priori. Savoir quoi en faire est autre chose, non ?

Premier pas

Vérifier que tout fonctionne
☞ passez la souris au dessus des boutons, vous devez voir un texte explicatif en vert apparaître.
☞ cliquez dans la case à cocher et vérifiez que quand vous passez la souris au dessus des boutons vous ne voyez plus les informations.
☞ vérifiez que le message informatif en orange indique bien que le fichier Plusbase.mem est chargé.
☞ pressez le bouton : les boutons lançant les exemples doivent apparaître.
☞ cliquez sur le bouton : du texte doit se charger à gauche du côté entrée et une * verte doit apparaître en Sortie.

Bravo ! vous venez d'exécuter votre premier programme en PLUSHIE: l'éveil de PLUSHIE, ses tous premiers pas en votre compagnie.

Vous pouvez maintenant tester le fonctionnement des boutons

Deuxième pas

Que faire quand ça ne fonctionne pas ? Si le message informatif en orange défile et que rien ne semble ne se passer (ou que la sortie se remplit en boucle), un appui sur la touche doit arrêter l'exécution du code. C'est ce qui arrivera par exemple, si vous relancez une seconde fois sans avoir au préalable remis à zéro
en l'absence d'appui sur la touche , les programmes PLUSHIE sont actuellement stoppés après 10 secondes.

Après un arrêt par ou sur durée trop longue il est probable que le programme ait été interrompu au milieu d'une séquence d'exécution. Plus rien ne fonctionnera. Il faut alors appuyer sur .


☞ Si tout semble bloqué, il suffit de rafraîchir la page web pour réinitialiser le programme au cas où l'appui sur la touche aurait échoué.

Je ne pense pas que vous ayez besoin un jour d'aller jusqu'à fermer votre navigateur.

Si vous entrez du code, appuyez sur le bouton , ou une démo et que rien ne se passe, PLUSHIE est probablement parti dans une boucle. Un appui sur le bouton ou sur le bouton résoudra le souci.
⚠ Si vous rencontrez un bug sérieux, merci d'en informer PLUSHIE ⚠ Plushie.langage(à)free.fr

Marcher

Premier Exemple : l'éveil de PLUSHIE
c'est l'équivalent d'un hello world réduit au minimum

Appuyez sur puis sur s'il est apparent ou sur puis .

Le texte en bleu qui apparait à gauche correspond au code que PLUSHIE exécute. Les éventuels affichages apparaissent à droite, en vert. Pour l'instant il doit y avoir juste *

Vous pouvez rajouter du code à gauche puis l'exécuter soit avec le bouton soit en appuyant en même temps sur et .

Attention à bien vous faire comprendre de PLUSHIE: tapez le texte à la fin du texte existant et respectez les majuscules et le nombre d'espaces. Chaque caractère compte pour PLUSHIE.

Si peu de temps après le démarrage de PLUSHIE, vous ne pouvez pas faire beaucoup de choses. Vous pouvez retaper
 Dire Étoile 
ou le copier et le coller (plusieurs fois éventuellement) et appuyer et voir apparâitre des étoiles à droite.

Vous pouvez jouer avec Dire pour voir les adresses des mots que PLUSHIE connait déjà comme:

Dire Éveil 4 ou Dire Mot


essayez Dire Étoile Dire Continuer Dire Étoile

Vous pouvez aussi pour avoir une place nette en entrée. Cela n'a pas d'effet sur la mémoire de PLUSHIE qui a retenu le code précédent.
Option PLUSHIE en Zblurg ou incompréhensible vous pouvez aussi vous amuser avec ce démarrage de PLUSHIE en changeant les mots dans un fichier texte

(au format ANSI, PLUSHIE insiste) sur votre ordinateur que vous pourrez charger à l'aide du bouton Ou, après avoir remis à zéro, copier le texte de l'exemple en Zblurg

Tomber

Deuxième Exemple: casser
Vous avez déjà dû l'expérimenter avec l'exemple précédent: une espace de trop, une majuscule oubliée, et PLUSHIE ne répond plus.

Tant que l'on conserve l'interpréteur de base inclus dans le fichier de boot Plusbase.mem, PLUSHIE est extrêmement sensible à la syntaxe.
Mais pas d'inquiétude, la touche est prévue pour ces cas là.

Maintenant, après relancez deux fois. Normalement, l'indicateur de statut fait défiler le temps et rien d'autre ne se passe. Arretez le déroulement du programme avec

Vous venez d'expérimenter que pour PLUSHIE la seconde exécution d'un programme ne donne en général pas le même résultat que la première. Entre temps, il a appris et tout retenu. et ici, comme on touche à des variables très sensibles, la seconde exécution décale l'adresse de la mémoire.

Se relever

Troisième exemple : voir des étoiles 🌟
Oui, parce qu'après être tombé, on voit *✦🌟 des étoiles 🌟✦*, au moins dans les bandes dessinées.

Essayez un nouveau bouton:

Cette fois vous découvrez un PLUSHIE initialisé qui a déjà appris une liste de fonction.
(Le bouton initialier fait une remise à zero, charge et exécute le fichier ini.txt dont le listing apparait à droite. Il est commenté, mais ça reste très technique.)

Maintenant vous pouvez demander plus à PLUSHIE.


Après avoir lu en détail le fichier ini.txt , appuyer sur la touche puis sur

Ensuite tapez Exécuter Afficher puis

Après l'avoir fait apparaître si nécessaire avec , lancez

Rien de bien nouveau, PLUSHIE affiche le listing de Listeétoiles et à nouveau une étoile avec un texte d'accompagnement

puis copiez plusieurs fois le code Exécuter Listeétoiles

Le nombre d'étoile augmente ! Mais aucune boucle ni récursion n'a été programmée.
À chaque itération la procédure Listeétoiles se modifie elle même et s'allonge pour afficher à chaque fois une étoile de plus, comme le montre son listing.
Comment lire un code en PLUSHIE avancé ?
Vous pouvez vérifier par vous-même en analysant le code de la procédure Listeétoiles. Au besoin rechargez le fichier de code avec

Le code est commenté pour identifier les différentes étapes. Au début cela peut paraître touffu, mais en y allant pas à pas ce n'est pas si compliqué.

Cela donne l'impression qu'il y a plus d'une seule instruction, mais en réalité chaque paire de mot correspond à une instruction de copie indirecte PLUSHIE.


Les premières lignes sont assez explicites et très proches d'une déclaration de variable dans d'autres langages.Dans les lignes suivantes, les variables se voient affecter des valeurs. Étoile se voit affecter le symbole*
Pourquoi ne pas faire Étoile *directement ?
Le listing de la fonction suit. On peut oublier les Exécuter Apprendre Instruction , l'instruction se trouve à chaque fois en fin de ligne.
(notons qu'en PLUSHIE Exécuter Apprendre Instruction pourrait être remplacé par >=: par exemple pour revenir à un langage classique avec des caractères réservés)

Bien entendu, le listing peut être obtenu, une fois la fonction chargée par Liste Listeétoile Exécuter Afficherliste de manière plus lisible.

Une fois la fonction enregistrée, à la fin de la séquence des Exécuter Apprendre Instruction, la fonction est proprement finalisée.
(une liste doit se terminer en bouclant sur elle-même en PLUSHIE) voir Pourquoi

La suite du code correspond à la présentation qui s'affiche à l'écran.


C'est le listing de la fonction qui est important. et on voir que la fonction s'allogne à chaque itération.

Mise en abîme: on pourra noter aussi que la fonction Afficherliste peut se lister elle-même.

Liste Afficherliste Exécuter Afficherliste

Courir

Un arbre qui grandit à venir, PLUSHIE pense que vous allez être bluffés. Quel challenge !
🏗
En construction, plus à venir